// pages/component/emailMessage.js
const app = getApp();
Page({

    /**
     * 页面的初始数据
     */
    data: {
        useSysEmailSend: 1,
        emailMsg: {
            userid: "",
            emaileSendForm: "",
            emailSendTo:"",
            securityCode: "",
            emailId: "",
            userId: ""
        },
        autoFocus: true,
        "server": app.globalData.server,
    },

    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function (options) {
        console.log(app.globalData.myUserInfo);
        const myUserInfo = app.globalData.myUserInfo;
        console.log(JSON.stringify(app.globalData.myUserInfo))
        if (!myUserInfo || myUserInfo == {} || !myUserInfo.id) {
            app.registOrLogin(this.getUserEmail());
        } else {
            this.getUserEmail();
        }
    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function () {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function () {
        console.log(app.globalData.myUserInfo);
    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function () {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function () {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function () {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function () {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function () {

    },
    switch1ChangeUseSysEmailSend: function () {
        // this.data.useSysEmailSend = !this.data.useSysEmailSend;
        // 因为这个变量属性涉及到后面的某些表单是否需要显示,所以需要使用setData,如果直接赋值,不知道为什么v-if不生效
        this.setData({
            useSysEmailSend: this.data.useSysEmailSend == 1 ? 0 : 1
        })
    },
    bindInput: function (e) {
        // 表单双向数据绑定
        var that = this;
        var dataset = e.currentTarget.dataset;
        // data-开头的是自定义属性，可以通过dataset获取到，dataset是一个json对象
        var name = dataset.name;
        var value = e.detail.value;
        // 拼接对象属性名，用于为对象属性赋值
        var attributeName = 'applyFormObject.' + name
        that.data[name] = value;
        that.setData({
            [attributeName]: that.data[name]
        });
    },
    /**
     * 获取用户邮箱信息
     */
    getUserEmail: function () {
        const self = this;
        wx.request({
            url: self.data.server + "userEmail/getUserEmail",
            method: "post",
            data: {
                "userid": app.globalData.myUserInfo.id,
            },
            dataType: "json",
            responseType: "	text",
            success(result) {
                self.setData({
                    emailMsg: result.data.data
                })
                console.log(JSON.stringify(self.data.emailMsg))
                console.log("获取用户邮箱信息成功!");
            },
            fail(result) {
                console.log("获取用户邮箱信息失败!");
                console.log(result);
            },
            complete() {
            }
        })
    },
    /**
     * 获取验证码
     */
    getValidateCode(){
        const self = this;
        wx.request({
            url: self.data.server + "code/createEmailValidateCode",
            method: "post",
            data: {
                "key": app.globalData.myUserInfo.openId,
                "email":self.data.emailMsg.emailSendTo,
                "userId":app.globalData.myUserInfo.id
            },
            dataType: "json",
            responseType: "	text",
            success(result) {
                console.log("发送验证码邮箱成功!");
            },
            fail(result) {
                console.log("发送验证码邮箱失败!");
            },
            complete() {
            }
        })
    }
})